package com.localjoycommunity.cpdj.project.system.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.localjoycommunity.cpdj.framework.aspectj.lang.annotation.Excel;
import com.localjoycommunity.cpdj.framework.web.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 课程管理对象 sys_course
 *
 * @author leepandar
 * @date 2020-11-12
 */
public class SysCourse extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * $column.columnComment
     */
    private Long id;

    /**
     * 课程名称
     */
    @Excel(name = "课程名称")
    private String title;

    /**
     * 讲师
     */
    @Excel(name = "讲师")
    private String editor;

    /**
     * 来源
     */
    @Excel(name = "来源")
    private String source;

    /**
     * 视频地址
     */
    @Excel(name = "视频地址")
    private String videoUrl;

    /**
     * 视频封面
     */
    @Excel(name = "视频封面")
    private String videoCover;

    /**
     * 视频描述
     */
    @Excel(name = "视频描述")
    private String videoDesc;

    /**
     * 课程时长
     */
    @Excel(name = "课程时长")
    private int courseTime;

    /**
     * 观看次数
     */
    @Excel(name = "观看次数")
    private Long watchNum;

    /**
     * $column.columnComment
     */
    @Excel(name = "观看次数")
    private Long digNum;

    /**
     * 观看人数
     */
    @Excel(name = "观看人数")
    private Long watchPeople;

    /**
     * seo标题
     */
    @Excel(name = "seo标题")
    private String seoTitle;

    /**
     * seo关键词
     */
    @Excel(name = "seo关键词")
    private String seoKeyWord;

    /**
     * seo 描述
     */
    @Excel(name = "seo 描述")
    private String seoDescribe;

    /**
     * 删除标志（0未上架 1上架 2代表删除）
     */
    private String delFlag;

    /**
     * 1:党课学习  2红色影视
     */
    private String courseType;

    @TableField(exist = false)
    private int isDig;

    @TableField(exist = false)
    private String watchProgress;

    public int getIsDig() {
        return isDig;
    }

    public void setIsDig(int isDig) {
        this.isDig = isDig;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getId() {
        return id;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getTitle() {
        return title;
    }

    public void setEditor(String editor) {
        this.editor = editor;
    }

    public String getEditor() {
        return editor;
    }

    public void setSource(String source) {
        this.source = source;
    }

    public String getSource() {
        return source;
    }

    public void setVideoUrl(String videoUrl) {
        this.videoUrl = videoUrl;
    }

    public String getVideoUrl() {
        return videoUrl;
    }

    public void setVideoCover(String videoCover) {
        this.videoCover = videoCover;
    }

    public String getVideoCover() {
        return videoCover;
    }

    public void setVideoDesc(String videoDesc) {
        this.videoDesc = videoDesc;
    }

    public String getVideoDesc() {
        return videoDesc;
    }

    public int getCourseTime() {
        return courseTime;
    }

    public void setCourseTime(int courseTime) {
        this.courseTime = courseTime;
    }

    public void setWatchNum(Long watchNum) {
        this.watchNum = watchNum;
    }

    public Long getWatchNum() {
        return watchNum;
    }

    public void setDigNum(Long digNum) {
        this.digNum = digNum;
    }

    public Long getDigNum() {
        return digNum;
    }

    public void setWatchPeople(Long watchPeople) {
        this.watchPeople = watchPeople;
    }

    public Long getWatchPeople() {
        return watchPeople;
    }

    public void setSeoTitle(String seoTitle) {
        this.seoTitle = seoTitle;
    }

    public String getSeoTitle() {
        return seoTitle;
    }

    public void setSeoKeyWord(String seoKeyWord) {
        this.seoKeyWord = seoKeyWord;
    }

    public String getSeoKeyWord() {
        return seoKeyWord;
    }

    public void setSeoDescribe(String seoDescribe) {
        this.seoDescribe = seoDescribe;
    }

    public String getSeoDescribe() {
        return seoDescribe;
    }

    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }

    public String getDelFlag() {
        return delFlag;
    }

    public String getWatchProgress() {
        return watchProgress;
    }

    public void setWatchProgress(String watchProgress) {
        this.watchProgress = watchProgress;
    }

    public String getCourseType() {
        return courseType;
    }

    public void setCourseType(String courseType) {
        this.courseType = courseType;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("title", getTitle())
                .append("editor", getEditor())
                .append("source", getSource())
                .append("videoUrl", getVideoUrl())
                .append("videoCover", getVideoCover())
                .append("videoDesc", getVideoDesc())
                .append("courseTime", getCourseTime())
                .append("createTime", getCreateTime())
                .append("watchNum", getWatchNum())
                .append("digNum", getDigNum())
                .append("watchPeople", getWatchPeople())
                .append("seoTitle", getSeoTitle())
                .append("seoKeyWord", getSeoKeyWord())
                .append("seoDescribe", getSeoDescribe())
                .append("delFlag", getDelFlag())
                .toString();
    }
}
